import numpy as np

# 二维操作、index 、count、append、insert、remove、sort、sorted、reverse
"""
    实例的方法将改变对象中的属性、顺序。结构方法不改变是原对象的顺序。
"""
if __name__ == '__main__':
    "numpy 的矩阵、数组"
    list_1 = [[1., 0., 0.],
              [0., 1., 0.],
              [0., 0., 1.]]

    print(np.array(list_1).shape)

    array = [1, 2, 32, 3, 43, 5]
    print("count 2的个数为：", array.count(2))

    array.append(43)
    print("append 追加元素", array)

    array.insert(1, "字符串")
    print("insert 插入数据: ", array)

    print("list的类型: ", type(array))

    # remove 删除原来的list
    array.remove(2)
    print("移除第一个为2的元素：", array)

    # 排序   sort 改变原数组排序  sorted不改变原数组牌组，返回一个新的数据
    array_1 = list(filter(lambda x: not isinstance(x, str), array))
    print("filter 之后的数据", array_1)

    array_1.sort(reverse=False)
    print(array_1)

    # sorted 返回一个新的排序后的数据
    array_1 = list(filter(lambda x: not isinstance(x, str), array))
    print(sorted(array_1))

    # 倒序
    array_1.reverse()
    print(array_1)

    # 初始化list
    array_1 = list([1, 23, 2, 2, 32, 3])
    print(array_1)

    array_1 = [1, 23, 2, 32, 312, 3, 5]
    print(array_1)